package collection;

import java.util.*;

/**
 * 集合的排序：Point对象
 */
public class SortPoint {
    public static void main(String[] args) {
        List<Point> list =new ArrayList<>();

        list.add(new Point(5,8));
        list.add(new Point(15,60));
        list.add(new Point(57,89));
        list.add(new Point(1,4));
        list.add(new Point(10,8));
        list.add(new Point(22,35));
        System.out.println("list原始数组："+list);
        list.sort((o1, o2) -> (o1.getX()*o1.getX()+o1.getY()*o1.getY())-(o2.getX()*o2.getX()+o2.getY()*o2.getY()));
        System.out.println(list);
        //自定义排序规则：
//        Collections.sort(list, new Comparator<Point>() {
//
//            public int compare(Point o1, Point o2) {
//                return (o1.getX()*o1.getX()+o1.getY()*o1.getY())- (o2.getX()*o2.getX()+o2.getY()*o2.getY());
//            }
//        });
//        System.out.println("list排序后的数组："+list);

//        list.sort(new Comparator<Point>() {
//            @Override
//            public int compare(Point o1, Point o2) {
//                return o1.getX()-o2.getX();
//            }
//        });
//        System.out.println(list);
//
//       List<String> l=new ArrayList<>();
//       l.add("dhfgs");
//       l.add("ds");
//       l.add("d");
//       l.sort((o1,o2) -> o1.length()-o2.length());
//
//        System.out.println(l);


    }
}
